/**
 * gpms
 * 2012-8-22 上午9:25:43
 * 作者：陈志明
 * 
 */
package com.gpms.privilege.dao;

import java.util.List;

import com.gpms.common.dao.BaseDaoSupport;
import com.gpms.mapper.Module;

/**
 * @author Jackie chen
 *
 */
public class ModuleDao extends BaseDaoSupport {
	
	/**
	 * 查询所有菜单
	 * @return
	 */
	public List<Module> findAllModule(){
		return this.getSqlSession().selectList(moduleMapper+".selectAllModule");
	}
	
	/**
	 * 根据ID查询菜单
	 * @param module
	 * @return
	 */
	public Module findModuleById(Module module){
		return this.getSqlSession().selectOne(moduleMapper+".selectByPrimaryKey", module.getId());
	}
	
	/**
	 * 根据父ID查询菜单
	 * @param module
	 * @return
	 */
	public List<Module> findModuleByParentId(Module module){
		return this.getSqlSession().selectList(moduleMapper+".selectModuleByParentId",module);
	}
	
	/**
	 * 查询菜单树
	 * @return
	 */
	public List<Module> findModuleTree(){
		return this.getSqlSession().selectList(moduleMapper+".selectModuleTree");
	}
	
	/**
	 * 保存菜单
	 * @param module
	 * @return
	 */
	public int saveMoule(Module module){
		return this.getSqlSession().insert(moduleMapper+".insertSelective", module);
	}
	
	/**
	 * 根据ID修改菜单
	 * @param module
	 * @return
	 */
	public int alter(Module module){
		return this.getSqlSession().update(moduleMapper+".updateByPrimaryKeySelective", module);
	}
	
	/**
	 * 根据ID删除菜单
	 * @param module
	 * @return
	 */
	public int remove(Module module){
		return this.getSqlSession().delete(moduleMapper+".deleteByPrimaryKey", module);
	}
}
